Lightweight Lemmas in λProlog
نویسندگان
چکیده
λProlog is known to be well-suited for expressing and implementing logics and inference systems. We show that lemmas and definitions in such logics can be implemented with a great economy of expression. The terms of the meta-language (λProlog) can be used to express the statement of a lemma, and the type checking of the metalanguage can directly implement the type checking of the lemma. The ML-style prenex polymorphism of λProlog allows easy expression of polymorphic inference rules, but a more general polymorphism would be necessary to express polymorphic lemmas directly. We discuss both the Terzo and Teyjus implementations of λProlog as well as related systems such as Elf.
منابع مشابه
Polymorphic Lemmas and Definitions in lambda-Prolog and Twelf
λProlog is known to be well-suited for expressing and implementing logics and inference systems. We show that lemmas and definitions in such logics can be implemented with a great economy of expression. We encode a higher-order logic using an encoding that maps both terms and types of the object logic (higher-order logic) to terms of the metalanguage (λProlog). We discuss both the Terzo and Tey...
متن کاملLightweight Lemmas in Prolog 1
Prolog is known to be well-suited for expressing and implementing logics and inference systems. We show that lemmas and deenitions in such logics can be implemented with a great economy of expression. We encode a polymorphic higher-order logic using the ML-style polymorphism of Prolog. The terms of the metalanguage (Prolog) can be used to express the statement of a lemma, and metalanguage type-...
متن کاملA Lambda Prolog Based Animation of Twelf Specifications
Specifications in the Twelf system are based on a logic programming interpretation of the Edinburgh Logical Framework or LF. We consider an approach to animating such specifications using a λProlog implementation. This approach is based on a lossy translation of the dependently typed LF expressions into the simply typed lambda calculus (STLC) terms of λProlog and a subsequent encoding of lost d...
متن کاملAn Empirical Study of the Runtime Behavior of Higher-Order Logic Programs
Implementation technology for higher-order logic programming languages such as λProlog [17] and Elf [21] is still in its infancy. There are many features of these languages that do not occur in ordinary Prolog programs, such as types, variable binding constructs for terms, embedded implication and universal quantification, or dependent types and explicit construction of proofs. Some initial wor...
متن کامل